<!DOCTYPE HTML><html lang="en">
<HEAD>

<meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2005. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >

<META charset="utf-8">

<LINK REL="STYLESHEET" HREF="../book.css" TYPE="text/css">
<TITLE>Debugging a program</TITLE>

<link rel="stylesheet" type="text/css" HREF="../book.css">
</HEAD>
<BODY>
<h2>Debugging a Program</h2>
<p>When you define a <a href="debug_launch.htm">launch configuration</a> for
running a program, you can specify which modes (run, debug, profile, etc.) are supported
by your program.  If you support debug mode, then you need to implement a debug
model and UI that allow users to interact with your programs while they are under debug.
The core platform debug plug-in provides support for:</p>
<ul>
  <li> a generic debug model</li>
  <li>debug events and listeners</li>
  <li>breakpoint management</li>
  <li>expression management</li>
</ul>
<p>The debug UI plug-in provides a framework for showing your debug model in the UI.  It also includes
utility classes for implementing common UI tasks.</p>
<p>Since it's difficult to discuss generic debugging in any meaningful detail,
we'll review the platform debug model and UI classes from the perspective of the
Java debugger.</p>
<p><a href="http://www.eclipse.org/articles/Article-Debugger/how-to.html">How to Write an Eclipse Debugger</a> 
provides a start to finish example for building a debugger using a simple push down automata (PDA)
assembly language as an example.</p>

</BODY>
</HTML>
